package com.lechi.web.dto;

import com.lechi.web.common.alarm.AlarmRuleStrategy;
import lombok.Data;

import java.util.List;

/**
 * 二代站报文解析规则, 为了节约内存，列名简化
 *
 * @author yangguang
 */
@Data
public class IotWeatherSensorParseDto {

    /**
     * 设备ID 对应数据库字段：deviceId
     */
    private Long deviceId;

    /**
     * 设备观测要素外键 对应数据库字段：sensorAliasId
     */
    private Long sensorAliasId;

    /**
     * 设备观测要素外键 对应数据库字段：sensorAliasName
     */
    private String sensorAliasName;

//    /**
//     * 设备标识 对应数据库字段：deviceSign
//     */
//    private String deviceSign;
//
//    /**
//     * 设备标识序号 对应数据库字段：deviceSignIndex
//     */
//    private int deviceSignIndex;
//
//    /**
//     * 仪器ID 对应数据库字段：instrumentId
//     */
//    private String instrumentId;
//
//    /**
//     * 仪器ID序号 对应数据库字段：instrumentIndex
//     */
//    private int instrumentIndex;
//
//    /**
//     * 站地址 对应数据库字段：stationNum
//     */
//    private String stationNum;
//
//    /**
//     * 站地址序号 对应数据库字段：stationNumIndex
//     */
//    private int stationNumIndex;
//
//    /**
//     * 服务类型 对应数据库字段：serviceType
//     */
//    private String serviceType;
//    /**
//     * 服务类型 对应数据库字段：serviceTypeIndex
//     */
//    private int serviceTypeIndex;
//
//    /**
//     * 数据体开始索引 对应数据库字段：sensorsIndex
//     */
//    private int sensorsIndex;

    /**
     * 要素标识符 对应数据库字段：sensorSign
     */
    private String sensorSign;

    /**
     * 值类型 对应数据库字段：valueType
     */
    private String valueType;

    /**
     * 小数位数，0表示整数，1表示1位小数 对应数据库字段：sensorDigit
     */
    private Long sensorDigit = 1L;

    /**
     * 单位 对应数据库字段：unit
     */
    private String unit;

    /**
     * 触发规则
     */
    private List<AlarmRuleStrategy> alarmRuleStrategyList;
}
